<?php
require "login.php";
error_reporting(E_ALL);
ini_set("display_errors", 1);

include_once "../classes/controller/RelatorioController.class.php";

$controller = new RelatorioController();

	$acao = RequestConstants::SALVAR;
	$nomeRelatorio = trim($_POST["nomeRelatorio"]);
	//Recupera nome CampoPagina
	$campoPg = trim($_POST["campoPagina"]);
	//Recupera nome CampoLinha
	$campoLn = trim($_POST["campoLinha"]);
	//Recupera nome CampoDados
	$arrayDados = Array();
	for ($i=0;$i<($_POST["totalDados"] + 1);$i++){
		$campoDd = trim($_POST["campoDados_".$i]);
		if ($_POST["radio_".$i] == RequestConstants::SOMA){
			$arrayDados[$i] = "count(distinct(".$campoDd."))";
		} else {			
			$arrayDados[$i] = $campoDd;
		}
	}

	$listaFiltros = Array();
	$count = 0;
	//Recupera filtros do campo de Pagina
	$isData = $_POST["campoPaginaIsData"];
	$totalPagina = $_POST["totalPagina"];
	for ($i=0;$i<=$totalPagina;$i++){
		$campoPagina = $_POST["selectPagina_".$i];
		if ($campoPagina != '' && $campoPagina != RequestConstants::NENHUM_REGISTRO) {
			if ($isData){

				if ($campoPagina != RequestConstants::TODOS_REGISTRO){

					$operador = $_POST["selectFiltroPagina_".$i];

					if ($campoPagina == RequestConstants::ANO) {
						$valorCampo = $_POST["selectFiltroDataPagina_".RequestConstants::ANO."_".$i];
						$listaFiltros[$count] = "date_part('YEAR',".$campoPg.")".$operador.$valorCampo;
					} else if ($campoPagina == RequestConstants::MES) {
						$valorCampo = $_POST["selectFiltroDataPagina_".RequestConstants::MES."_".$i];
						$listaFiltros[$count] = "date_part('MONTH',".$campoPg.")".$operador.$valorCampo;
					} else if ($campoPagina == RequestConstants::DIA) {
						$valorCampoDia = $_POST["selectFiltroDataPagina_".RequestConstants::DIA."_".$i];
						$valorCampoMes = $_POST["selectFiltroDataPagina_".RequestConstants::MES."_".$i];
						$valorCampoAno = $_POST["selectFiltroDataPagina_".RequestConstants::ANO."_".$i];
						$listaFiltros[$count] = "MONTH(".$campoPg.")".$operador.$campoPagina;
					}

					$count ++;
				}
			} else {
				if ($campoPagina != RequestConstants::TODOS_REGISTRO){
					$operador = $_POST["selectFiltroPagina_".$i];
					$listaFiltros[$count] = $campoPagina.$operador.$campoPagina;
					$count ++;
				}
			}
		}
	}

	//Recupera filtros do campo de Linha
	$totalLinha = $_POST["totalLinha"];
	for ($i=0;$i<=$totalLinha;$i++){
		//selectFiltroLinha_
		$campoLinha = $_POST["selectLinha_".$i];
		if ($campoLinha != '' && $campoLinha != RequestConstants::NENHUM_REGISTRO) {
			if ($campoLinha != RequestConstants::TODOS_REGISTRO) {
				$operador = $_POST["selectFiltroLinha_".$i];
				$listaFiltros[$count] = $campoLn.$operador.$campoLinha;
				$count ++;
			}
		}
	}

	//Recupera filtros do campo dados_0
	$totalDados_0 = $_POST["totalDados_0"];
	for ($i=0;$i<=$totalDados_0;$i++){
		$campoDados = $_POST["selectDados_0_".$i];
		if ($campoDados != '' && $campoDados != RequestConstants::NENHUM_REGISTRO) {
			if ($campoDados != RequestConstants::TODOS_REGISTRO){
				$operador = $_POST["selectFiltro_0_".$i];
				$listaFiltros[$count] = $_POST["campoDados_0"].$operador.$campoDados;
				$count ++;
			}
		}
	}

	//Recupera filtros do campo dados_1
	$totalDados_1 = $_POST["totalDados_1"];
		if ($totalDados_1 > 0) {
			for ($i=0;$i<=$totalDados_1;$i++){
				$campoDados = $_POST["selectDados_1_".$i];
				if ($campoDados != '' && $campoDados != RequestConstants::NENHUM_REGISTRO) {
					if ($campoDados != RequestConstants::TODOS_REGISTRO){
						$operador = $_POST["selectFiltro_1_".$i];
						$listaFiltros[$count] = $_POST["campoDados_1"].$operador.$campoDados;
						$count ++;
					}
				}
			}
		}

	//Recupera filtros do campo dados_1
	$totalDados_2 = $_POST["totalDados_2"];
	if ($totalDados_2 > 0) {
		for ($i=0;$i<=$totalDados_2;$i++){
			$campoDados = $_POST["selectDados_2_".$i];
			if ($campoDados != '' && $campoDados != RequestConstants::NENHUM_REGISTRO) {
				if ($campoDados != RequestConstants::TODOS_REGISTRO){
					$operador = $_POST["selectFiltro_2_".$i];
					$listaFiltros[$count] = $_POST["campoDados_2"].$operador.$campoDados;
					$count ++;
				}
			}
		}
	}

	$relatorioID = $controller->salvarRelatorio($acao, $nomeRelatorio, $campoPg, $campoLn, $arrayDados, $listaFiltros);


header("Location: detalhes_relatorio.php?acao=detalhar&id=$relatorioID&tipo=1");
?>
<html>
<head></head>
<body>
	<?php 
	if (isset($_REQUEST["mensagem"])) { ?>
	<div class="divErro" >
		<?php echo $_REQUEST["mensagem"]; ?>
	</div>
		<br />	
	<?php } ?>
</body>
</html>
